package com.powerbank.user.service;

import com.powerbank.user.dto.IdentityVerifyDTO;
import com.powerbank.user.vo.IdentityVerifyVO;

/**
 * 实名认证服务接口
 */
public interface IdentityVerifyService {

    /**
     * 提交身份证认证
     *
     * @param userId    用户ID
     * @param verifyDTO 认证信息
     * @return 认证结果
     */
    IdentityVerifyVO submitIdentityVerify(Long userId, IdentityVerifyDTO verifyDTO);

    /**
     * 获取用户认证信息
     *
     * @param userId 用户ID
     * @return 认证信息
     */
    IdentityVerifyVO getIdentityVerifyInfo(Long userId);

    /**
     * 重新提交认证（认证失败后）
     *
     * @param userId    用户ID
     * @param verifyDTO 认证信息
     * @return 认证结果
     */
    IdentityVerifyVO resubmitIdentityVerify(Long userId, IdentityVerifyDTO verifyDTO);
}